Saltar al contenido principal

Configuración de Metadata

Esta guía le muestra cómo configurar metadata para las imágenes de su cámara OV20i. La metadata es información personalizada que se almacena con cada imagen capturada, ayudándole a rastrear detalles importantes como números de parte, números de serie o datos de producción.

Cuándo usar Metadata: Seguimiento de producción, identificación de piezas, registros de control de calidad, información de lotes, identificación de operadores o cualquier dato personalizado que necesite asociar con las imágenes de inspección.

Prerrequisitos

  • Sistema de cámara OV20i instalado y conectado
  • Receta activa configurada con la configuración de imagen e inspección
  • Al menos un bloque AI (clasificación o segmentación) configurado
  • Comprensión de los datos que desea rastrear a partir de los resultados de inspección

¿Qué es Metadata?

Metadata es información adicional que se adjunta a cada imagen capturada. Esta información:

  • Se almacena con la imagen en la biblioteca de la cámara
  • Aparece en el HMI para que los operadores la vean
  • Ayuda a identificar y rastrear piezas específicas o lotes de producción
  • Puede buscarse en la biblioteca para análisis

Ejemplos de metadata útil:

  • Números de parte (p. ej., "P12345")
  • Números de serie (p. ej., "SN987654")
  • Nombres de operadores (p. ej., "John_Smith")
  • Información de turno (p. ej., "A_Shift")
  • Números de lote (p. ej., "Batch_2025_001")
nota

La metadata solo puede guardarse cuando una inspección se ha completado. La metadata debe ser parte del flujo que inicia desde "All Block Outputs" después de que la cámara captura y procesa una imagen.

Paso 1: Acceder al Editor Node-RED

1.1 Navegar al IO Block

  1. Abra su receta activa en Recipe Editor
  2. Haga clic en "IO Block" en el menú breadcrumb
  3. Haga clic en "Configure IO" para entrar al editor Node-RED

1.2 Verificar la Interfaz de Node-RED

Punto de control: Debe ver el editor de flujo Node-RED con el flujo existente del IO Block y la paleta de nodos en el lado izquierdo.

Paso 2: Localizar el Nodo "All Block Outputs"

2.1 Encontrar el Punto de Inicio

En su flujo Node-RED, busque el nodo "All Block Outputs". Este es el punto de inicio que recibe datos de la cámara después de que se activa y procesa una inspección.

El nodo "All Block Outputs":

  • Contiene resultados de inspección de todos los bloques AI
  • Incluye información de captura de imagen
  • Proporciona los datos necesarios para la creación de metadata
  • Es la fuente que alimenta tanto la metadata como las decisiones de aprobación/rechazo

2.2 Entender la Estructura del Flujo

Su flujo debe seguir este patrón:

Camera Trigger → AI Processing → All Block Outputs → [Su Lógica Personalizada]

Desde "All Block Outputs" necesita dos caminos separados:

  1. Camino de Metadata: All Block Outputs → Function (Create Metadata) → Capture Metadata
  2. Camino de Decisión: All Block Outputs → Function (Logic) → Final Pass/Fail
nota

Tanto la metadata como las decisiones de aprobación/rechazo deben ramificarse desde el nodo "All Block Outputs".

Paso 3: Añadir Nodo Capture Metadata

3.1 Localizar Nodo Metadata

  1. Encuentre el nodo "Capture Metadata" en el panel izquierdo (sección Overview)
  2. Arrastre el nodo "Capture Metadata" al lienzo del flujo
  3. Posiciónelo en su flujo después del trigger pero antes de la captura de imagen

3.2 Colocación del Nodo en el Flujo

Estructura correcta del flujo:

All Block Outputs → Function (Create Metadata) → Capture Metadata

Function (Pass/Fail Logic) → Final Pass/Fail

aviso

El nodo "Final Pass/Fail" es requerido para que el flujo funcione correctamente. Todo flujo debe terminar con este nodo.

Paso 4: Configurar Campos de Metadata

4.1 Configurar Metadata Básica

  1. Doble clic en el nodo Capture Metadata
  2. Configure los campos de metadata que desea rastrear
  3. Configure las fuentes de datos para cada campo

4.2 Requisitos de Formato de Metadata

Importante: La metadata debe estar formateada como un objeto con:

  • Claves de tipo string - Los nombres de campo deben ser texto
  • Valores de tipo string o número - Los datos pueden ser texto o números

Ejemplo de formato correcto:

{
"part_number": "P12345",
"serial_number": "SN987654",
"operator": "John_Smith",
"shift": "A",
"quantity": 100,
"temperature": 23.5
}

Paso 5: Crear Nodo Function para Metadata

5.1 Añadir Nodo Function para Creación de Metadata

  1. Añada un nodo "function" entre "All Block Outputs" y el nodo "Capture Metadata"
  2. Doble clic en el nodo function para configurarlo
  3. Esta función extraerá datos de los resultados de inspección y creará la metadata

5.2 Extraer Datos de All Block Outputs

El nodo "All Block Outputs" proporciona datos completos de inspección. Así es como se extraen:

// Extraer datos de resultados de inspección
const captureId = msg.payload.capture_id;
const serialNumber = msg.payload.serial_number || "No_Serial";
const inspectionTime = msg.payload.inspection_time || new Date().toISOString();

// Crear metadata a partir de datos de inspección
msg.payload = {
"capture_id": captureId,
"serial_number": serialNumber,
"inspection_time": inspectionTime,
"operator": global.get("current_operator") || "Unknown"
};
return msg;

5.3 Metadata Estática (Valores Fijos)

Para información que no cambia durante la producción:

// Establecer valores estáticos de metadata
msg.payload = {
"recipe_name": "Bolt_Inspection_v2",
"line_number": "Line_3",
"shift": "A_Shift",
"station": "QC_Station_1"
};
return msg;

5.4 Metadata Dinámica (Usando Datos de Inspección)

Para información que proviene de los resultados de inspección:

// Extraer datos de inspección
const captureId = msg.payload.capture_id;
const imageUrl = msg.payload.image_url;
const predictions = msg.payload.classification?.predictions || [];

// Crear metadata dinámica
msg.payload = {
"capture_id": captureId,
"part_number": "P" + Date.now(),
"total_rois": predictions.length,
"timestamp": new Date().toISOString(),
"batch": global.get("current_batch") || "Default_Batch"
};
return msg;

Paso 6: Conectar Flujos de Metadata y Pass/Fail

6.1 Estructura Requerida del Flujo

Cada flujo debe tener ambos caminos desde "All Block Outputs":

All Block Outputs → Function (Create Metadata) → Capture Metadata

Function (Pass/Fail Logic) → Final Pass/Fail

6.2 Conectar Camino de Metadata

  1. Conecte la salida de "All Block Outputs" a la entrada de su función de metadata
  2. Conecte la salida de la función de metadata a la entrada de "Capture Metadata"
  3. El nodo Capture Metadata puede ser un nodo terminal (no necesita conexión de salida)

6.3 Conectar Camino de Pass/Fail

  1. Conecte la salida de "All Block Outputs" a una función lógica de pass/fail
  2. Conecte la salida de la función lógica a la entrada de "Final Pass/Fail"
  3. El nodo "Final Pass/Fail" es obligatorio - todo flujo debe terminar aquí

6.4 Ejemplo de Función Lógica Pass/Fail

// Extraer resultado de inspección para decisión pass/fail
const predictions = msg.payload.classification?.predictions || [];

// Determinar si la inspección pasó (todas las ROIs pasaron)
let passed = true;
for (let prediction of predictions) {
if (!prediction.predicted_class.includes("pass")) {
passed = false;
break;
}
}

// Establecer resultado pass/fail
msg.payload = passed;
return msg;

Paso 7: Probar Configuración de Metadata

7.1 Desplegar y Probar

  1. Haga clic en el botón "Deploy" (esquina superior derecha)
  2. Active una inspección usando su método de trigger configurado (manual, entrada digital o PLC)
  3. Verifique que:
    • Se capturó una imagen
    • La metadata aparece con la imagen
    • Se tomó la decisión de pass/fail
    • El flujo se completó correctamente

7.2 Verificar Flujo Completo

Verifique que ambos caminos funcionen:

Camino de Metadata:

  • Navegue a Library en la interfaz principal
  • Encuentre su imagen de prueba
  • Verifique que la metadata aparezca en los detalles de la imagen

Camino de Pass/Fail:

  • Verifique que los resultados de inspección muestren estado pass/fail
  • Confirme que el nodo "Final Pass/Fail" procesó correctamente
  • Confirme que cualquier salida conectada (PLCs, indicadores) responda apropiadamente

7.3 Probar Diferentes Fuentes de Trigger

Verifique que la metadata funcione con su trigger específico:

Para Triggers Manuales:

  • Use el botón de trigger en el software
  • Verifique que la metadata aparezca con cada captura manual

Para Triggers por Entrada Digital:

  • Active sensor o switch externo
  • Confirme que la metadata se capture con las imágenes activadas

Para Triggers por PLC:

  • Envíe señal de trigger desde PLC
  • Verifique que la metadata incluya datos del PLC si aplica

Paso 8: Configuraciones Avanzadas de Metadata

8.1 Metadata desde Múltiples Variables Globales

Combine datos de diferentes fuentes almacenadas globalmente:

// Combinar datos de varios almacenamientos globales
const operatorData = global.get("operator_info") || {};
const productData = global.get("product_info") || {};
const shiftData = global.get("shift_info") || {};

msg.payload = {
"operator": operatorData.name || "Unknown",
"operator_id": operatorData.id || "000",
"product_code": productData.code || "Default",
"product_version": productData.version || "1.0",
"shift": shiftData.current || "Day",
"line_status": "Running",
"timestamp": new Date().toISOString()
};
return msg;

Paso 9: Solución de Problemas de Metadata

9.1 Problemas Comunes

ProblemaSíntomasSolución
Metadata no apareceNo hay datos en LibraryVerifique que el nodo metadata esté en el flujo principal del IO Block
Metadata con imagen incorrectaDatos aparecen con capturas incorrectasVerifique el tiempo - la metadata debe estar antes de la captura de imagen
Trigger no funcionaNo se capturan imágenesVerifique la configuración del trigger en IO Block
Campos de metadata faltantesFaltan algunos datosVerifique el formato del payload en el nodo function
Error de tipo de dato incorrectoNodo muestra estado de errorAsegúrese que los valores sean solo strings o números

9.2 Depurar Flujo de Metadata

Agregue nodos debug para solucionar problemas:

  1. Añada nodo debug después del trigger para verificar que funcione
  2. Añada nodo debug después de la función de metadata para revisar el payload
  3. Añada nodo debug después de Capture Metadata para confirmar procesamiento
  4. Revise el panel debug para mensajes de error

Paso 10: Mejores Prácticas

10.1 Diseño de Flujos

Diseñe flujos de metadata eficientes:

  • Mantenga la metadata al inicio del flujo - Establezca metadata inmediatamente después del trigger
  • Use un solo nodo metadata - No duplique nodos Capture Metadata
  • Mantenga continuidad del flujo - La metadata debe ser parte del flujo principal de inspección
  • Maneje datos faltantes - Siempre proporcione valores predeterminados

10.2 Nomenclatura de Campos de Metadata

Use nombres de campo consistentes y claros:

  • Use guiones bajos en lugar de espacios ("part_number" no "part number")
  • Sea descriptivo pero conciso ("operator" no "op")
  • Use minúsculas para consistencia
  • Evite caracteres especiales que puedan causar problemas

10.3 Consideraciones de Rendimiento

Para producción de alto volumen:

  • Minimice el tamaño de metadata - Incluya solo la información necesaria
  • Use tipos de datos eficientes - Números cuando sea posible, cadenas cortas
  • Evite procesamiento complejo - Mantenga la creación de metadata simple y rápida
  • Cache datos globales - Almacene datos usados frecuentemente en variables globales

¡Éxito! Su Sistema de Metadata Está Listo

Su configuración de metadata ahora puede:

✅ Adjuntar información personalizada a cada captura de imagen activada

✅ Rastrear datos de producción sincronizados con el flujo de inspección

✅ Almacenar información buscable en la biblioteca de la cámara

✅ Mostrar datos relevantes en el HMI para los operadores

✅ Soportar trazabilidad para requisitos de manufactura

Mantenimiento Continuo

Revisiones Regulares del Sistema

  • Verifique que la metadata aparezca con las capturas activadas
  • Revise datos faltantes en corridas de producción
  • Monitoree el rendimiento del flujo con altas tasas de trigger
  • Actualice campos de metadata conforme cambien los requisitos

Gestión del Flujo

  • Revise la sincronización de metadata en producción
  • Optimice el rendimiento de nodos function
  • Actualice la gestión de variables globales
  • Capacite a operadores en operación basada en triggers

Próximos Pasos

Después de configurar metadata basada en triggers:

  1. Pruebe con todos los tipos de trigger configurados (manual, digital, PLC)
  2. Capacite a los operadores en el uso correcto del trigger para captura de metadata
  3. Configure la gestión de variables globales para datos dinámicos
  4. Cree plantillas de metadata para diferentes líneas de producto
  5. Implemente monitoreo de producción usando análisis de metadata

🔗 Véase También